package com.weiquan.service;

import com.weiquan.dto.AiDiagnosisRequest;
import com.weiquan.vo.AiDiagnosisVO;
import org.springframework.web.servlet.mvc.method.annotation.SseEmitter;

/**
 * AI服务接口
 */
public interface AiService {

    /**
     * 执行AI诊断
     */
    AiDiagnosisVO performDiagnosis(AiDiagnosisRequest request, Long userId);

    /**
     * 流式AI诊断
     */
    SseEmitter performStreamDiagnosis(AiDiagnosisRequest request, Long userId);

    /**
     * 获取诊断历史
     */
    java.util.List<AiDiagnosisVO> getDiagnosisHistory(Long userId);

    /**
     * 获取诊断详情
     */
    AiDiagnosisVO getDiagnosisDetail(Long diagnosisId, Long userId);

    /**
     * 重新诊断
     */
    AiDiagnosisVO reDiagnosis(Long diagnosisId, Long userId);
}